<script setup lang="tsx">
interface Emits {
  (e: 'search', model: any): void;
}

const emit = defineEmits<Emits>();
const model = defineModel<any>('model', { required: true });
function search() {
  emit('search', model.value);
}

function reset() {
  model.value.shiftType = null;
  model.value.time = [];
  emit('search', model.value);
}
</script>

<template>
  <ACard :title="null" :bordered="false" class="search-card card-wrapper">
    <AForm
      :model="model"
      :label-col="{
        span: 5,
        md: 7
      }"
      class="search-form"
    >
      <div class="w-full flex">
        <ARow :gutter="[15, 8]" wrap class="w-full">
          <ACol :span="24" :md="12" :lg="8" :xl="8" :xxl="6">
            <AFormItem label="班次类型" name="shiftType" class="m-0" :label-col="{}">
              <ASelect v-model:value="model.shiftType" placeholder="请选择班次类型" class="min-form-control">
                <ASelectOption value="白班">白班</ASelectOption>
                <ASelectOption value="晚班">晚班</ASelectOption>
              </ASelect>
            </AFormItem>
          </ACol>
          <ACol :span="24" :md="12" :lg="8" :xl="8" :xxl="6">
            <AFormItem label="时间范围" name="time" class="m-0" :label-col="{}">
              <ARangePicker
                v-model:value="model.time"
                :allow-clear
                format="YYYY-MM-DD"
                value-format="YYYY-MM-DD"
                class="min-form-control"
              />
            </AFormItem>
          </ACol>
          <div class="flex">
            <AFormItem class="m-0">
              <div class="w-full flex-y-center justify-end gap-12px">
                <AButton type="primary" ghost class="mini-btn" @click="search">
                  <template #icon>
                    <icon-ic-round-search class="align-sub text-icon" />
                  </template>
                  <span class="ml-3px">查询</span>
                </AButton>

                <AButton class="mini-btn" @click="reset">
                  <template #icon>
                    <icon-ic-round-refresh class="align-sub text-icon" />
                  </template>
                  <span class="ml-3px">{{ $t('common.reset') }}</span>
                </AButton>
              </div>
            </AFormItem>
          </div>
        </ARow>
      </div>
    </AForm>
  </ACard>
</template>

<style></style>
